using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using System.Windows.Forms;

namespace BlackFox
{
    public enum TaskDialogCommonButtons {}
    public class TaskDialogButton {}
    public class TaskDialogRadioButton {}
    public class TaskDialog
    {
        #region Properties

        public string Title
        {
            get { return m_form.Text; }
            set { m_form.Text = value; }
        }
        private Icon m_icon;

        public Icon Icon
        {
            get { return m_icon; }
            set { m_icon = value; }
        }
        private string m_mainInstruction;

        public string MainInstruction
        {
            get { return m_mainInstruction; }
            set { m_mainInstruction = value; }
        }
        private string m_content;

        public string Content
        {
            get { return m_content; }
            set { m_content = value; }
        }
        private TaskDialogCommonButtons m_commonButtons;

        public TaskDialogCommonButtons CommonButtons
        {
            get { return m_commonButtons; }
            set { m_commonButtons = value; }
        }
        private List<TaskDialogButton> m_buttons;

        public List<TaskDialogButton> Buttons
        {
            get { return m_buttons; }
            set { m_buttons = value; }
        }
        private int m_defaultButton;

        public int DefaultButton
        {
            get { return m_defaultButton; }
            set { m_defaultButton = value; }
        }
        private List<TaskDialogRadioButton> m_radioButtons;

        public List<TaskDialogRadioButton> RadioButtons
        {
            get { return m_radioButtons; }
            set { m_radioButtons = value; }
        }
        private int m_defaultRadioButton;

        public int DefaultRadioButton
        {
            get { return m_defaultRadioButton; }
            set { m_defaultRadioButton = value; }
        }
        private bool m_noDefaultRadioButton;

        public bool NoDefaultRadioButton
        {
            get { return m_noDefaultRadioButton; }
            set { m_noDefaultRadioButton = value; }
        }
        private string m_verificationText;

        public string VerificationText
        {
            get { return m_verificationText; }
            set { m_verificationText = value; }
        }
        private string m_expandedInformation;

        public string ExpandedInformation
        {
            get { return m_expandedInformation; }
            set { m_expandedInformation = value; }
        }
        private string m_expandedControlText;

        public string ExpandedControlText
        {
            get { return m_expandedControlText; }
            set { m_expandedControlText = value; }
        }
        private string m_collapsedControlText;

        public string CollapsedControlText
        {
            get { return m_collapsedControlText; }
            set { m_collapsedControlText = value; }
        }
        private Icon m_footerIcon;

        public Icon FooterIcon
        {
            get { return m_footerIcon; }
            set { m_footerIcon = value; }
        }
        #endregion

        TaskDialogForm m_form;
        public TaskDialogForm Form { get { return m_form; } }

        public TaskDialog()
        {
            m_form = new TaskDialogForm();
        }

        public DialogResult ShowModal(IWin32Window owner)
        {
            return m_form.ShowDialog(owner);
        }
    }
}
